#include <iostream>
#include <string>

using namespace std;


int main() {
    string s;
    cin >> s;

    // a用于保存字符串中的数字  b用于保存最后的结果  count用于进行计数   c用于保存进位
    int a[31] = {0},j = 0,b[31] = {0},c = 0,count = 0;
    for(int i = 0;i < s.length();i++) a[i] = s[i] - '0';  //将字符串转换为数字

    for (int k = 2;k <= 9;k++) {
        while(j < s.length() - 1) {
            b[j] = (c * 10 + a[j]) / k;   // 计算对应位置的相除结果
            c = (c * 10 + a[j]) % k;      // 计算是否有进位
            j++;
        }
        b[j] = (c * 10 + a[j]) / k;       // 计算最后一位的结果
        if((c * 10 + a[j]) % k == 0) {    // 判断是否有进位，如果为0，则说明能整除，输出结果
            count ++;
            cout << k << " ";
        }

        // 将变量归零
        for(int i = 0;i <= j;i++) b[i] = 0;
        j = 0;
        c = 0;
    }

    // 如果发现没有能整除的数，输出none
    if(count == 0 ) {
        cout << "none";
    }

    return 0;
}